let http = require('http')
let querystring = require('querystring')

  http.createServer((req, res) => {
    if (req.method === 'OPTIONS') {
      // 对 OPTIONS 请求做出回应,不单独回应会造成跨域
      res.writeHead(200, {
        'Access-Control-Allow-Origin': '*',
        'Access-Control-Allow-Methods': 'GET, POST, OPTIONS',
        'Access-Control-Allow-Headers': 'Content-Type',
        'Access-Control-Max-Age': '86400'
      })
      res.end()
      return
    }
    // 接收前端传来的body，数据量过大时可能会多次传输，所以需要进行过拼接
    let body = ''
    req.on('data', (chunk) => {
      body += chunk
    })
    // 数据接收完毕后会触发end
    req.on('end', () =>{
      let params
      try {
        // 尝试解析为 JSON 格式
        params = JSON.parse(body)
      } catch (error) {
        // 解析失败，则使用 querystring 解析
        params = querystring.parse(body)
      }
      res.writeHead(200, {
        'Content-Type': 'application/json; charset=utf8',
        'Access-Control-Allow-Origin': '*'
      })
      console.log('输入了：'+params.id)
      let data = {
        name: `请求回来的车哥`,
        age: 23,
        id: params.id,
      }
      res.write(JSON.stringify(data))
      res.end()
    })
  }).listen(8889)